//#include <stdio.h>
//#include <stdlib.h>
//void main(void)
//{ 
//	int *Num, n, i, j, k;
//	
//	scanf("%d", &n);
//	if ((Num = (int *)malloc(sizeof(int) * n)) == NULL) 
//		exit(0);	
//	for (i = 0; i < n; i++)
//		scanf("%d", Num + i);
//	
//	for (i = 0; i < n - 1; i++)
//	{
//		for (j = k = i + 1; k < n; k++)
//			if (*(Num+k) != *(Num+i))
//			{
//				*(Num+j) = *(Num+k);
//				j++;
//			}
//		n = j;		
//	}
//	
//	for (i = 0; i < n; i++)
//		printf("%d ", Num[i]);
//	
//	free(Num);
//}

//#include <stdio.h>
//int main()
//{
//	char s[100],*p=s;
//	int i=0,num[100]={0},k=0;
//	scanf("%s",s);
//	while(*(p+i))
//	{
//		if(*(p+i)==' ')
//		{
//			num[k++]=i+1;
//			*(p+i)='\0';
//		}
//		i++;
//	}
//	for(int j=k-1;j>=0;j--)
//	{
//		printf("%s ",p+num[j]);
//	}
//	printf("%s",p);
//	return 0;
//}

//ex050415.c
//#include <stdio.h>
//void main(void)
//{
//	char Str[80], *Ptr[30], i, j = 0, flag = 0;
//	
//	gets(Str);
//	
//	for (i = 0; Str[i]; i++)
//	{
//		if (Str[i] == ' ')
//			flag = 0;
//		else
//			if (flag == 0)
//			{
//				Ptr[j] = &Str[i];
//				flag = 1;
//				j++;
//			}
//	}
//	
//	for (i = j - 1; i >= 0; i--)
//	{
//		for (j = 0; *(Ptr[i] + j) != ' ' && *(Ptr[i] + j) != '\0'; j++)
//			putchar(*(Ptr[i] + j));
//		printf(" ");
//	}
//	printf("\n");
//}

//#include <stdio.h>
//
//int isprime(int n)
//{
//	for(int i=2;i<n;i++)
//		if(n%i==0)
//			return 0;
//	return 1;
//	
//	
//}
//
//void copyab(int *pa,int *pb, int *pn)
//{
//	int i=0,j=0;
//	while(i<10){
//	if(isprime(*(pa+i)))
//	{
//		pb[j++]=pa[i];
//	}
//	else
//		(*pn)--;
//	i++;
//}
//}
//
//main()
//{
//	int a[10],b[10],n,*p;
//	for(p=a;p<a+10;p++)
//		scanf("%d",p);
//	n=10;
//	copyab(a,b,&n);                      //调用时n将a数组元素个数传入子函数，子函数结束利用指向n的指针将b数组中元素个数带回
//	for(p=b;p<b+n;p++)
//		printf("%3d",*p);
//	printf("\n");
//}


//#include <stdio.h>
//
//int isprime(int n)
//{
//	for(int i=2;i<n;i++)
//		if(n%i==0)
//			return 0;
//	return 1;
//	
//	
//}
//
//void copyab(int *pa,int *pb, int *pn)
//{
//	int i=0,j=0;
//	while(i<10){
//		if(isprime(*(pa+i)))
//		{
//			pb[j++]=pa[i];
//		}
//		else
//			(*pn)--;
//		i++;
//	}
//}
//
//main()
//{
//	int a[10],b[10],n,*p;
//	for(p=a;p<a+10;p++)
//		scanf("%d",p);
//	n=10;
//	copyab(a,b,&n);                      //调用时n将a数组元素个数传入子函数，子函数结束利用指向n的指针将b数组中元素个数带回
//	for(p=b;p<b+n;p++)
//		printf("%3d",*p);
//	printf("\n");
//}

//#include <stdio.h>
//void sub1(int *p,int n)      //n为数组元素个数
//{
//	int i=0;
//	for(i=0;i<n;i++)
//		scanf("%d",p+i);
//}
//
//void sub2(int *p,int n)         //n为前n个元素乘10运算
//{
//	int i=0;
//	for(i=0;i<n;i++)
//		p[i]=10*p[i];	
//}
//
//main()
//{
//	int a[10],n,*p=a;
//	scanf("%d",&n); 
//	while(n>=10||n<=0)
//		scanf("%d",&n);
//	sub1(a,10);
//	sub2(a,n);
//	for(;p<a+10;p++)
//		printf("%d ",*p);
//	printf("\n");
//}

//#include <stdio.h>
//double fun(int x[],int num,int m,int n)          //num为数组元素个数
//{
//	int i=0;
//	double count;
//	if(m+n>num)
//	{
//		for(i=m-1;i<num;i++)
//			count+=x[i];
//		return count/(num-m);
//	}
//	else
//		for(i=m-1;i<m+n;i++)
//			count+=x[i];
//	return count/n;
//}
//
//main()
//{
//	int i=0,arr[10],m,num;
//	for(i=0;i<10;i++)
//		scanf("%d",arr+i);
//	scanf("%d,%d",&m,&num);
//	double ave;
//	ave=fun(arr,10,m,num);
//	printf("%.2lf",ave);
//}
